package com.pp.common.pojo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
import lombok.experimental.Accessors;
import lombok.experimental.SuperBuilder;


@Data
@SuperBuilder
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = true)
@TableName("comment")
public class Comment extends BasePojo {

    /**
     * 评论 ID
     */
    @TableId(value="id", type= IdType.ASSIGN_ID)
    private String id;

    /**
     * 评论所属帖子的 postID
     */
    @TableField("post_id")
    private String postId;

    /**
     * 发评人 userId
     */
    @TableField("user_id")
    private String userId;

    /**
     * 评论内容
     */
    @TableField("comment_content")
    private String commentContent;

    /**
     * 评论点赞数
     */
    @Builder.Default
    @TableField("comment_like_num")
    private Integer commentLikeNum = 0;

    /**
     * 评论被举报数
     */
    @Builder.Default
    @TableField("comment_report_num")
    private Integer commentReportNum = 0;

    /**
     * 评论是否被置顶 (默认未置顶)
     */
    @Builder.Default
    @TableField("comment_is_pinned")
    private Boolean commentIsPinned = false;

    /**
     * 评论状态: 0 - 禁用 1 - 启用 (默认启用)
     */
    @Builder.Default
    @TableField("comment_status")
    private Boolean commentStatus = true;

}
